package com.qyx.pmpucat.dto;

import com.mybatisflex.annotation.Column;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

import java.util.List;

/**
 * 问题DTO
 */
@Data
public class QuestionDTO {
    
    /**
     * 问题ID（编辑时需要）
     */
    private Long id;
    
    /**
     * 问题标题
     */
    @NotBlank(message = "问题标题不能为空")
    private String title;
    
    /**
     * 问题因子
     */
    private Double factor;
    
    /**
     * 问题类型: 1-单选题, 2-多选题
     */
    @NotNull(message = "问题类型不能为空")
    @Min(value = 1, message = "问题类型不正确")
    private Integer type;

    /**
     * 选项分类ID
     */
    @Column("option_category_id")
    private Long optionCategoryId;

    
    /**
     * 问卷ID
     */
    private Long questionnaireId;
    
    /**
     * 问题选项列表
     */
    private List<QuestionOptionDTO> options;
} 